Git and Github Overview
Table of Contents
Git cheat sheets
- http://cheat.errtheblog.com/s/git/
- Git and GitHub hidden features: https://github.com/tiimgreen/github-cheat-sheet
Books
- Pro Git – a full book on using git, written by Scott Chacon and published by Apress. Available for free in several formats. http://git-scm.com/book
- Pragmatic Version Control Using Git http://www.pragprog.com/titles/tsgit/pragmatic-version-control-using-git
- Git Internals Peepcode http://peepcode.com/products/git-internals-pdf
- Git in the Trenches http://cbx33.github.com/gitt/
- Pragmatic Guide to Git http://www.pragprog.com/titles/pg_git/pragmatic-guide-to-git
- Git: Version Control for Everyone http://www.packtpub.com/git-version-control-for-everyone/book
Tutorial
- http://think-like-a-git.net/
- A Visual Git Reference http://marklodato.github.com/visual-git-guide/index-en.html
- Git Immersion - a good place to start http://gitimmersion.com/
- git Manpage - the official git manual. Can be a little dry. https://www.kernel.org/pub/software/scm/git/docs/
- GitRef – a helpful quick reference guide for common git commands. http://gitref.org/
- Code School – basic concepts of git version control http://www.codeschool.com/courses/try-git
- Understanding git conceptually http://www.sbf5.com/~cduan/technical/git/
- Ry's Git Tutorial http://rypress.com/tutorials/git/index.html
- Git for Designer http://hoth.entp.com/output/git_for_designers.html
- Git for Computer Scientists http://eagain.net/articles/git-for-computer-scientists/
- Git Magic http://www-cs-students.stanford.edu/~blynn/gitmagic
- A Successful Branching Model
Git User’s Manual
Everyday GIT With 20 Commands Or So
GitHub
- Git and GitHub hidden features: https://github.com/tiimgreen/github-cheat-sheet
- Travis CI: Travis CI is a hosted continuous integration service.
- Use Github's issue tracker
- Use Github's Pull Request and Pull Request Workflows by Patrick Cozzi
Extras
- Interactive Rebase
- Need to merge multiple repos (e.g. using datavore in another project)? Use git subtree and DO NOT use git submodule.
More Tips
- Atomic Commit is a good practice.
- Stash is useful when you have unfinished messy things and need to switch branches to work on something else.